package com.jc.vo;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

public class PolicyRequest implements Serializable {

	private static final long serialVersionUID = -1;

	/**
	 * 原单号（第三方系统的唯一编号，或称系统跟踪号）
	 */
	private String trackingNo;

	/**
	 * 保险产品编号，见保险产品字典
	 */
	private String productCode;

	/**
	 * 被保险人名称
	 */
	private String insuredName;

	/**
	 * 货值
	 */
	private BigDecimal cargoValue;

	/**
	 * 运费
	 */
	private BigDecimal freight;

	/**
	 * 运费币种Code
	 */
	private String freightCurrencyCode;

	/**
	 * 保额确定方式
	 */
	private String baseAmountWay;

	/**
	 * 货值币别
	 */
	private String currencyCode;

	/**
	 * 投保比例（%）
	 */
	private BigDecimal ratio;

	/**
	 * 实际重量（毛重)
	 */
	private BigDecimal chargeableWeight;

	/**
	 * 备注
	 */
	private String remark;

	/**
	 * 运输方式
	 * 见运输方式字典
	 */
	private String transportModeCode;

	/**
	 * 运输工具及航次
	 * 航空：航班号
	 * 海运：船名、航次
	 * 铁路：班列号
	 * 公路：运输公司+车次
	 */
	private String transportTool;

	/**
	 * 提单号 / 运单号
	 */
	private String blNo;

	/**
	 * 派送方式
	 */
	private String deliverywayCode;

	/**
	 * 国际快递单号
	 */
	private String expressNo;

	/**
	 * 快递公司
	 */
	private String expressCompanyCode;

	/**
	 * shipment id
	 */
	private String shipmentId;

	/**
	 * 包装类型
	 */
	private String packingCode;

	/**
	 * 包装数量
	 */
	private Integer packingQuantity;

	/**
	 * 货描
	 */
	private String cargoDesc;

	/**
	 * 起运时间
	 */
	private Date departureDate;

	/**
	 * 开航日期是否按提单
	 */
	private Boolean departureDateFlag;

	/**
	 * 起运国代码
	 */
	private String departureCountryCode;

	/**
	 * 起运城市
	 */
	private String departureCity;

	/**
	 * 起运地
	 */
	private String departureAddress;

	/**
	 * 目的地类型
	 */
	private String destType;

	/**
	 * 目的国代码
	 */
	private String destinationCountryCode;

	/**
	 * 目的地城市
	 */
	private String destinationCity;

	/**
	 * 目的地
	 */
	private String destinationAddress;

	/**
	 * 中转国代码
	 */
	private String transferCountryCode;


	/**
	 * 中转地城市
	 */
	private String transferCity;

	/**
	 * 中转地
	 */
	private String transferAddress;

	/**
	 * 是否上架保障
	 */
	private Boolean shelf=false;

	private Boolean whsToWhs;



	/**
	 * 上架地
	 */
	private String shelfName;

	/**
	 * 信用证内容
	 */
	private String creditLetter;

	private String creditNo;

	/**
	 * 理赔地点
	 */
	private String claimSite;

	/**
	 * 发票号码
	 */
	private String invoiceNo;

	/**
	 * 货物种类
	 */
	private String cargoCategoryCode;

	/**
	 * 唛头
	 */
	private String cargoMarks;

	/**
	 * 投保人信息
	 */
	private PolicyApplicant applicantInfo;

	/**
	 * 被保险人信息
	 */
	private PolicyInsured insuredInfo;

//	/**
//	 * 保险条款
//	 */
//	private List<InsuranceRisk> insuranceRiskList;

	/**
	 *  操作人
	 */
	private String createUserName;

	/**
	 * 暴动保障
	 */
	private Boolean unrestRisk;

	/**
	 * 附件
	 */
	private List<PolicyAttachment> attachmentList;

	/**
	 * 批改理由
	 */
	private String amendmentReason;




	/**
	 *  上架类型
	 */
	private String shelfType;

	/**
	 * 跨境堡投保单号
	 */
	private String uniqueCode;
	/**
	 * 销售合同号
	 */
	private String bargainNo;

	private Boolean lossOnly;

	private String callbackUrl;

	private Boolean warRisk;

	private Boolean replyPostRisk;

	private Boolean wrongAddressRisk;


	/**
	 * 保险条款
	 */
	private List<InsuranceRisk> insuranceRiskList;



	public Boolean getWhsToWhs() {
		return whsToWhs;
	}

	public void setWhsToWhs(Boolean whsToWhs) {
		this.whsToWhs = whsToWhs;
	}

	public List<InsuranceRisk> getInsuranceRiskList() {
		return insuranceRiskList;
	}

	public void setInsuranceRiskList(List<InsuranceRisk> insuranceRiskList) {
		this.insuranceRiskList = insuranceRiskList;
	}

	public Boolean getWarRisk() {
		return warRisk;
	}

	public void setWarRisk(Boolean warRisk) {
		this.warRisk = warRisk;
	}

	public Boolean getReplyPostRisk() {
		return replyPostRisk;
	}

	public void setReplyPostRisk(Boolean replyPostRisk) {
		this.replyPostRisk = replyPostRisk;
	}

	public Boolean getWrongAddressRisk() {
		return wrongAddressRisk;
	}

	public void setWrongAddressRisk(Boolean wrongAddressRisk) {
		this.wrongAddressRisk = wrongAddressRisk;
	}

	public String getBargainNo() {
		return bargainNo;
	}

	public void setBargainNo(String bargainNo) {
		this.bargainNo = bargainNo;
	}

	public String getUniqueCode() {
		return uniqueCode;
	}

	public void setUniqueCode(String uniqueCode) {
		this.uniqueCode = uniqueCode;
	}

	public String getShelfType() {
		return shelfType;
	}

	public void setShelfType(String shelfType) {
		this.shelfType = shelfType;
	}

	public String getAmendmentReason() {
		return amendmentReason;
	}

	public void setAmendmentReason(String amendmentReason) {
		this.amendmentReason = amendmentReason;
	}

	public List<PolicyAttachment> getAttachmentList() {
		return attachmentList;
	}

	public void setAttachmentList(List<PolicyAttachment> attachmentList) {
		this.attachmentList = attachmentList;
	}

	public String getTrackingNo() {
		return trackingNo;
	}

	public void setTrackingNo(String trackingNo) {
		this.trackingNo = trackingNo;
	}

	public String getProductCode() {
		return productCode;
	}

	public void setProductCode(String productCode) {
		this.productCode = productCode;
	}

	public String getInsuredName() {
		return insuredName;
	}

	public void setInsuredName(String insuredName) {
		this.insuredName = insuredName;
	}

	public BigDecimal getCargoValue() {
		return cargoValue;
	}

	public String getFreightCurrencyCode() {
		return freightCurrencyCode;
	}

	public void setFreightCurrencyCode(String freightCurrencyCode) {
		this.freightCurrencyCode = freightCurrencyCode;
	}

	public void setCargoValue(BigDecimal cargoValue) {
		this.cargoValue = cargoValue;
	}

	public BigDecimal getFreight() {
		return freight;
	}

	public void setFreight(BigDecimal freight) {
		this.freight = freight;
	}

	public String getBaseAmountWay() {
		return baseAmountWay;
	}

	public void setBaseAmountWay(String baseAmountWay) {
		this.baseAmountWay = baseAmountWay;
	}

	public String getCurrencyCode() {
		return currencyCode;
	}

	public void setCurrencyCode(String currencyCode) {
		this.currencyCode = currencyCode;
	}

	public BigDecimal getRatio() {
		return ratio;
	}

	public void setRatio(BigDecimal ratio) {
		this.ratio = ratio;
	}

	public BigDecimal getChargeableWeight() {
		return chargeableWeight;
	}

	public void setChargeableWeight(BigDecimal chargeableWeight) {
		this.chargeableWeight = chargeableWeight;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getTransportModeCode() {
		return transportModeCode;
	}

	public void setTransportModeCode(String transportModeCode) {
		this.transportModeCode = transportModeCode;
	}

	public String getTransportTool() {
		return transportTool;
	}

	public void setTransportTool(String transportTool) {
		this.transportTool = transportTool;
	}

	public String getBlNo() {
		return blNo;
	}

	public void setBlNo(String blNo) {
		this.blNo = blNo;
	}

	public String getDeliverywayCode() {
		return deliverywayCode;
	}

	public void setDeliverywayCode(String deliverywayCode) {
		this.deliverywayCode = deliverywayCode;
	}

	public String getExpressNo() {
		return expressNo;
	}

	public void setExpressNo(String expressNo) {
		this.expressNo = expressNo;
	}

	public String getShipmentId() {
		return shipmentId;
	}

	public void setShipmentId(String shipmentId) {
		this.shipmentId = shipmentId;
	}

	public String getPackingCode() {
		return packingCode;
	}

	public void setPackingCode(String packingCode) {
		this.packingCode = packingCode;
	}

	public Integer getPackingQuantity() {
		return packingQuantity;
	}

	public void setPackingQuantity(Integer packingQuantity) {
		this.packingQuantity = packingQuantity;
	}

	public String getCargoDesc() {
		return cargoDesc;
	}

	public void setCargoDesc(String cargoDesc) {
		this.cargoDesc = cargoDesc;
	}

	public Date getDepartureDate() {
		return departureDate;
	}

	public void setDepartureDate(Date departureDate) {
		this.departureDate = departureDate;
	}

	public Boolean getDepartureDateFlag() {
		return departureDateFlag;
	}

	public void setDepartureDateFlag(Boolean departureDateFlag) {
		this.departureDateFlag = departureDateFlag;
	}

	public String getDepartureCountryCode() {
		return departureCountryCode;
	}

	public void setDepartureCountryCode(String departureCountryCode) {
		this.departureCountryCode = departureCountryCode;
	}

	public String getDepartureCity() {
		return departureCity;
	}

	public void setDepartureCity(String departureCity) {
		this.departureCity = departureCity;
	}

	public String getDepartureAddress() {
		return departureAddress;
	}

	public void setDepartureAddress(String departureAddress) {
		this.departureAddress = departureAddress;
	}

	public String getDestinationCountryCode() {
		return destinationCountryCode;
	}

	public void setDestinationCountryCode(String destinationCountryCode) {
		this.destinationCountryCode = destinationCountryCode;
	}

	public String getDestinationCity() {
		return destinationCity;
	}

	public void setDestinationCity(String destinationCity) {
		this.destinationCity = destinationCity;
	}

	public String getDestinationAddress() {
		return destinationAddress;
	}

	public void setDestinationAddress(String destinationAddress) {
		this.destinationAddress = destinationAddress;
	}

	public String getTransferCountryCode() {
		return transferCountryCode;
	}

	public void setTransferCountryCode(String transferCountryCode) {
		this.transferCountryCode = transferCountryCode;
	}


	public String getTransferCity() {
		return transferCity;
	}

	public void setTransferCity(String transferCity) {
		this.transferCity = transferCity;
	}

	public String getTransferAddress() {
		return transferAddress;
	}

	public void setTransferAddress(String transferAddress) {
		this.transferAddress = transferAddress;
	}

	public Boolean getShelf() {
		return shelf;
	}

	public void setShelf(Boolean shelf) {
		this.shelf = shelf;
	}


	public String getShelfName() {
		return shelfName;
	}

	public void setShelfName(String shelfName) {
		this.shelfName = shelfName;
	}

	public String getCreditLetter() {
		return creditLetter;
	}

	public void setCreditLetter(String creditLetter) {
		this.creditLetter = creditLetter;
	}

	public String getCreditNo() {
		return creditNo;
	}

	public void setCreditNo(String creditNo) {
		this.creditNo = creditNo;
	}

	public String getClaimSite() {
		return claimSite;
	}

	public void setClaimSite(String claimSite) {
		this.claimSite = claimSite;
	}

	public String getInvoiceNo() {
		return invoiceNo;
	}

	public void setInvoiceNo(String invoiceNo) {
		this.invoiceNo = invoiceNo;
	}

	public String getCargoCategoryCode() {
		return cargoCategoryCode;
	}

	public void setCargoCategoryCode(String cargoCategoryCode) {
		this.cargoCategoryCode = cargoCategoryCode;
	}

	public String getCargoMarks() {
		return cargoMarks;
	}

	public void setCargoMarks(String cargoMarks) {
		this.cargoMarks = cargoMarks;
	}

	public static long getSerialVersionUID() {
		return serialVersionUID;
	}

	public String getDestType() {
		return destType;
	}

	public void setDestType(String destType) {
		this.destType = destType;
	}

	public PolicyApplicant getApplicantInfo() {
		return applicantInfo;
	}

	public void setApplicantInfo(PolicyApplicant applicantInfo) {
		this.applicantInfo = applicantInfo;
	}

	public PolicyInsured getInsuredInfo() {
		return insuredInfo;
	}

	public void setInsuredInfo(PolicyInsured insuredInfo) {
		this.insuredInfo = insuredInfo;
	}

//	public List<InsuranceRisk> getInsuranceRiskList() {
//		return insuranceRiskList;
//	}
//
//	public void setInsuranceRiskList(List<InsuranceRisk> insuranceRiskList) {
//		this.insuranceRiskList = insuranceRiskList;
//	}

	public String getCreateUserName() {
		return createUserName;
	}

	public void setCreateUserName(String createUserName) {
		this.createUserName = createUserName;
	}

	public String getExpressCompanyCode() {
		return expressCompanyCode;
	}

	public void setExpressCompanyCode(String expressCompanyCode) {
		this.expressCompanyCode = expressCompanyCode;
	}

	public Boolean getUnrestRisk() {
		return unrestRisk;
	}

	public void setUnrestRisk(Boolean unrestRisk) {
		this.unrestRisk = unrestRisk;
	}

	public Boolean getLossOnly() {
		return lossOnly;
	}

	public void setLossOnly(Boolean lossOnly) {
		this.lossOnly = lossOnly;
	}

	public String getCallbackUrl() {
		return callbackUrl;
	}

	public void setCallbackUrl(String callbackUrl) {
		this.callbackUrl = callbackUrl;
	}
}
